home *** CD-ROM | disk | FTP | other *** search
/ PC Gamer (Italian) 48 / PC Gamer IT CD 48 1-2.iso / age2 / AoE2demo.exe / 1033 / CABFILE / MSGAME.CAB / Data / gamedata.drs / Unnamed File 000008.bina < prev    next >
Text File  |  1999-10-01  |  17KB  |  728 lines

  1. #load-if-defined DIFFICULTY-EASIEST
  2.  
  3.     #load-if-not-defined TEAMS-LOCKED
  4.     (defrule
  5.         (true)
  6.     =>
  7.         (set-stance every-human neutral)
  8.         (set-stance every-computer neutral)
  9.         (disable-self)
  10.     )
  11.  
  12.     (defrule
  13.         (cc-players-building-type-count any-human market > 0)
  14.     =>
  15.         (generate-random-number 2)
  16.         (set-goal personality 50)
  17.         (disable-self)
  18.     )
  19.  
  20.     (defrule
  21.         (goal personality 50)
  22.         (random-number == 1)
  23.     =>
  24.         (enable-timer t-chathelp 10)
  25.         (set-goal personality 4)
  26.         (disable-self)
  27.     )
  28.  
  29.     (defrule
  30.         (goal personality 50)
  31.     =>
  32.         (set-goal personality 0)
  33.         (disable-self)
  34.     )
  35.  
  36.     (defrule
  37.         (goal personality 4)
  38.         (taunt-detected any-computer 218)
  39.     =>
  40.         (set-goal personality 0)
  41.         (acknowledge-taunt this-any-computer 218)
  42.         (disable-timer t-chathelp)
  43.         (disable-self)
  44.     )
  45.  
  46.     (defrule
  47.         (goal personality 4)
  48.         (timer-triggered t-chathelp)
  49.     =>
  50.         (set-goal personality ALLY)
  51.         (disable-timer t-chathelp)
  52.         (set-stance every-human neutral)
  53.         (set-stance every-computer neutral)
  54.         (chat-to-player-using-id every-human 22000)
  55.             ;"Send me 100 resources and I shall join thine side."
  56.         (chat-to-player-using-id every-computer 22400)    ;218
  57.         (disable-self)
  58.     )
  59.  
  60.     (defrule
  61.         (goal personality ALLY)
  62.         (or
  63.             (or
  64.                 (players-tribute any-human-neutral wood >= 100)
  65.                 (players-tribute any-human-neutral food >= 100)
  66.             )
  67.             (or
  68.                 (players-tribute any-human-neutral gold >= 100)
  69.                 (players-tribute any-human-neutral stone >= 100)
  70.             )
  71.         )
  72.     =>
  73.         (chat-to-player-using-id this-any-human-neutral 22002)
  74.         (chat-to-player-using-id this-any-human-neutral 22003)
  75.             ;"I am grateful for thy tribute."
  76.             ;"Let us be friends henceforth!"
  77.         (set-stance this-any-human-neutral ally)
  78.         (set-stance every-computer enemy)
  79.         (disable-self)
  80.     )
  81.  
  82.     #end-if
  83.  
  84. (defrule
  85.     (true)
  86. =>
  87.     (set-strategic-number sn-percent-enemy-sighted-response 10)
  88.     (set-strategic-number sn-easiest-reaction-percentage 20)
  89.     (set-difficulty-parameter ability-to-maintain-distance 100)
  90.     (set-difficulty-parameter ability-to-dodge-missiles 100)
  91.     (disable-self)
  92. )
  93.  
  94. ;crude age advancement rules
  95. (defrule
  96.     (goal age-advancement NO)
  97.     (players-current-age every-human >= feudal-age)
  98.     (can-research-with-escrow feudal-age)
  99. =>
  100.     (release-escrow food)
  101.     (research feudal-age)
  102.     (set-goal age-advancement NOTICE)
  103.     (enable-timer t-ageup 300)
  104. )
  105.  
  106. (defrule
  107.     (current-age == feudal-age)
  108. =>
  109.     (disable-timer t-ageup)
  110.     (set-goal age-advancement NO)
  111.     (disable-self)
  112. )
  113.  
  114. (defrule
  115.     (goal age-advancement NO)
  116.     (players-current-age every-human >= castle-age)
  117.     (can-research-with-escrow castle-age)
  118. =>
  119.     (release-escrow food)
  120.     (release-escrow gold)
  121.     (research castle-age)
  122.     (set-goal age-advancement NOTICE)
  123.     (enable-timer t-ageup 300)
  124. )
  125.  
  126. (defrule
  127.     (current-age == castle-age)
  128. =>
  129.     (disable-timer t-ageup)
  130.     (set-goal age-advancement NO)
  131.     (disable-self)
  132. )
  133.  
  134. (defrule
  135.     (goal age-advancement NOTICE)
  136.     (current-age < castle-age)
  137.     (timer-triggered t-ageup)
  138. =>
  139.     (disable-timer t-ageup)
  140.     (set-goal age-advancement NO)
  141. )
  142. #end-if
  143. ;********************************
  144. #load-if-defined DIFFICULTY-EASY
  145. (load "petersen tower")
  146.  
  147.     #load-if-not-defined TEAMS-LOCKED
  148.  
  149.     (defrule
  150.         (cc-players-building-type-count any-human market > 0)
  151.     =>
  152.         (generate-random-number 2)
  153.         (set-goal personality 50)
  154.         (disable-self)
  155.     )
  156.  
  157.     (defrule
  158.         (goal personality 50)
  159.         (random-number == 1)
  160.     =>
  161.         (enable-timer t-chathelp 10)
  162.         (set-goal personality 4)
  163.         (disable-self)
  164.     )
  165.  
  166.     (defrule
  167.         (goal personality 50)
  168.     =>
  169.         (set-goal personality 0)
  170.         (disable-self)
  171.     )
  172.  
  173.     (defrule
  174.         (goal personality 4)
  175.         (taunt-detected any-computer 218)
  176.     =>
  177.         (set-goal personality 0)
  178.         (acknowledge-taunt this-any-computer 218)
  179.         (disable-timer t-chathelp)
  180.         (disable-self)
  181.     )
  182.  
  183.     (defrule
  184.         (goal personality 4)
  185.         (timer-triggered t-chathelp)
  186.     =>
  187.         (set-goal personality ALLY)
  188.         (set-stance every-human neutral)
  189.         (set-stance every-computer neutral)
  190.         (chat-to-player-using-id every-computer 22400)    ;218
  191.         (disable-timer t-chathelp)
  192.         (disable-timer t-chat)
  193.         (enable-timer t-chat 600)
  194.         (disable-self)
  195.     )
  196.  
  197.     (defrule
  198.         (goal personality ALLY)
  199.         (starting-resources == low-resources)
  200.     =>
  201.         (chat-to-player-using-id every-human 22004)
  202.         (chat-to-player-using-id every-human 22005)
  203.             ;"Send me 200 each of wood, food, gold, and stone!"
  204.             ;"If thou dost this thing, I shall join thine side."
  205.         (disable-self)
  206.     )
  207.  
  208.     (defrule
  209.         (goal personality ALLY)
  210.         (starting-resources == medium-resources)
  211.     =>
  212.         (chat-to-player-using-id every-human 22006)
  213.         (chat-to-player-using-id every-human 22005)
  214.             ;"Send me 500 each of wood, food, gold, and stone!"
  215.             ;"If thou dost this thing, I shall join thine side."
  216.         (disable-self)
  217.     )
  218.  
  219.     (defrule
  220.         (goal personality ALLY)
  221.         (starting-resources == high-resources)
  222.         (stance-toward any-human neutral)
  223.     =>
  224.         (chat-to-player-using-id every-human 22007)
  225.         (chat-to-player-using-id every-human 22005)
  226.             ;"Send me 1000 each of wood, food, gold, and stone!"
  227.             ;"If thou dost this thing, I shall join thine side."
  228.         (disable-self)
  229.     )
  230.  
  231.     (defrule
  232.         (timer-triggered t-chat)
  233.         (goal personality ALLY)
  234.         (or
  235.             (and
  236.                 (starting-resources == low-resources)
  237.                 (players-tribute any-human-neutral wood < 200)
  238.             )
  239.             (or
  240.                 (and
  241.                     (starting-resources == medium-resources)
  242.                     (players-tribute any-human-neutral wood < 500)
  243.                 )
  244.                 (and
  245.                     (starting-resources == high-resources)
  246.                     (players-tribute any-human-neutral wood < 1000)
  247.                 )
  248.             )
  249.         )
  250.     =>
  251.         (chat-to-player-using-id this-any-human-neutral 22008)
  252.             ;"Thou must send me more wood!"
  253.         (disable-timer t-chat)
  254.         (enable-timer t-chat 300)
  255.     )
  256.  
  257.     (defrule
  258.         (timer-triggered t-chat)
  259.         (goal personality ALLY)
  260.         (or
  261.             (and
  262.                 (starting-resources == low-resources)
  263.                 (players-tribute any-human-neutral food < 200)
  264.             )
  265.             (or
  266.                 (and
  267.                     (starting-resources == medium-resources)
  268.                     (players-tribute any-human-neutral food < 500)
  269.                 )
  270.                 (and
  271.                     (starting-resources == high-resources)
  272.                     (players-tribute any-human-neutral food < 1000)
  273.                 )
  274.             )
  275.         )
  276.     =>
  277.         (chat-to-player-using-id this-any-human-neutral 22009)
  278.             ;"Thou must send me more food!"
  279.         (disable-timer t-chat)
  280.         (enable-timer t-chat 300)
  281.     )
  282.  
  283.     (defrule
  284.         (timer-triggered t-chat)
  285.         (goal personality ALLY)
  286.         (or
  287.             (and
  288.                 (starting-resources == low-resources)
  289.                 (players-tribute any-human-neutral gold < 200)
  290.             )
  291.             (or
  292.                 (and
  293.                     (starting-resources == medium-resources)
  294.                     (players-tribute any-human-neutral gold < 500)
  295.                 )
  296.                 (and
  297.                     (starting-resources == high-resources)
  298.                     (players-tribute any-human-neutral gold < 1000)
  299.                 )
  300.             )
  301.         )
  302.     =>
  303.         (chat-to-player-using-id this-any-human-neutral 22010)
  304.             ;"Thou must send me more gold!"
  305.         (disable-timer t-chat)
  306.         (enable-timer t-chat 300)
  307.     )
  308.  
  309.     (defrule
  310.         (timer-triggered t-chat)
  311.         (goal personality ALLY)
  312.         (or
  313.             (and
  314.                 (starting-resources == low-resources)
  315.                 (players-tribute any-human-neutral stone < 200)
  316.             )
  317.             (or
  318.                 (and
  319.                     (starting-resources == medium-resources)
  320.                     (players-tribute any-human-neutral stone < 500)
  321.                 )
  322.                 (and
  323.                     (starting-resources == high-resources)
  324.                     (players-tribute any-human-neutral stone < 1000)
  325.                 )
  326.             )
  327.         )
  328.     =>
  329.         (chat-to-player-using-id this-any-human-neutral 22011)
  330.             ;"Thou must send me more stone!"
  331.         (disable-timer t-chat)
  332.         (enable-timer t-chat 300)
  333.     )
  334.  
  335.     (defrule
  336.         (goal personality ALLY)
  337.         (or
  338.             (and
  339.                 (starting-resources == low-resources)
  340.                 (players-tribute any-human-neutral wood >= 200)
  341.             )
  342.             (or
  343.                 (and
  344.                     (starting-resources == medium-resources)
  345.                     (players-tribute any-human-neutral wood >= 500)
  346.                 )
  347.                 (and
  348.                     (starting-resources == high-resources)
  349.                     (players-tribute any-human-neutral wood >= 1000)
  350.                 )
  351.             )
  352.         )
  353.     =>
  354.         (chat-to-player-using-id this-any-human-neutral 22012)
  355.             ;"Thank thee for the wood! It is enough."
  356.         (disable-self)
  357.     )
  358.  
  359.     (defrule
  360.         (goal personality ALLY)
  361.         (or
  362.             (and
  363.                 (starting-resources == low-resources)
  364.                 (players-tribute any-human-neutral food >= 200)
  365.             )
  366.             (or
  367.                 (and
  368.                     (starting-resources == medium-resources)
  369.                     (players-tribute any-human-neutral food >= 500)
  370.                 )
  371.                 (and
  372.                     (starting-resources == high-resources)
  373.                     (players-tribute any-human-neutral food >= 1000)
  374.                 )
  375.             )
  376.         )
  377.     =>
  378.         (chat-to-player-using-id this-any-human-neutral 22013)
  379.             ;"Thank thee for the food! It is enough."
  380.         (disable-self)
  381.     )
  382.  
  383.     (defrule
  384.         (goal personality ALLY)
  385.         (or
  386.             (and
  387.                 (starting-resources == low-resources)
  388.                 (players-tribute any-human-neutral gold >= 200)
  389.             )
  390.             (or
  391.                 (and
  392.                     (starting-resources == medium-resources)
  393.                     (players-tribute any-human-neutral gold >= 500)
  394.                 )
  395.                 (and
  396.                     (starting-resources == high-resources)
  397.                     (players-tribute any-human-neutral gold >= 1000)
  398.                 )
  399.             )
  400.         )
  401.     =>
  402.         (chat-to-player-using-id this-any-human-neutral 22014)
  403.             ;"Thank thee for the gold! It is enough."
  404.         (disable-self)
  405.     )
  406.  
  407.     (defrule
  408.         (goal personality ALLY)
  409.         (or
  410.             (and
  411.                 (starting-resources == low-resources)
  412.                 (players-tribute any-human-neutral stone >= 200)
  413.             )
  414.             (or
  415.                 (and
  416.                     (starting-resources == medium-resources)
  417.                     (players-tribute any-human-neutral stone >= 500)
  418.                 )
  419.                 (and
  420.                     (starting-resources == high-resources)
  421.                     (players-tribute any-human-neutral stone >= 1000)
  422.                 )
  423.             )
  424.         )
  425.     =>
  426.         (chat-to-player-using-id this-any-human-neutral 22015)
  427.             ;"Thank thee for the stone! It is enough."
  428.         (disable-self)
  429.     )
  430.  
  431.     (defrule
  432.         (goal personality ALLY)
  433.         (starting-resources == low-resources)
  434.         (players-tribute any-human-neutral wood >= 200)
  435.         (players-tribute any-human-neutral food >= 200)
  436.         (players-tribute any-human-neutral gold >= 200)
  437.         (players-tribute any-human-neutral stone >= 200)
  438.     =>
  439.         (chat-to-player-using-id this-any-human-neutral 22016)
  440.         (chat-to-player-using-id this-any-human-neutral 22017)
  441.             ;"The goods we have obtained from thee are glorious indeed!"
  442.             ;"Set thine stance to Ally with me!"
  443.         (enable-timer t-chatmore 60)
  444.         (set-goal 35 NOTICE)
  445.         (disable-self)
  446.     )
  447.  
  448.     (defrule
  449.         (goal personality ALLY)
  450.         (starting-resources == medium-resources)
  451.         (players-tribute any-human-neutral wood >= 500)
  452.         (players-tribute any-human-neutral food >= 500)
  453.         (players-tribute any-human-neutral gold >= 500)
  454.         (players-tribute any-human-neutral stone >= 500)
  455.     =>
  456.         (chat-to-player-using-id this-any-human-neutral 22016)
  457.         (chat-to-player-using-id this-any-human-neutral 22017)
  458.             ;"The goods we have obtained from thee are glorious indeed!"
  459.             ;"Set thine stance to Ally with me!"
  460.         (enable-timer t-chatmore 60)
  461.         (set-goal 35 NOTICE)
  462.         (disable-self)
  463.     )
  464.  
  465.     (defrule
  466.         (goal personality ALLY)
  467.         (starting-resources == high-resources)
  468.         (players-tribute any-human-neutral wood >= 1000)
  469.         (players-tribute any-human-neutral food >= 1000)
  470.         (players-tribute any-human-neutral gold >= 1000)
  471.         (players-tribute any-human-neutral stone >= 1000)
  472.     =>
  473.         (chat-to-player-using-id this-any-human-neutral 22016)
  474.         (chat-to-player-using-id this-any-human-neutral 22017)
  475.             ;"The goods we have obtained from thee are glorious indeed!"
  476.             ;"Set thine stance to Ally with me!"
  477.         (enable-timer t-chatmore 60)
  478.         (set-goal 35 NOTICE)
  479.         (disable-self)
  480.     )
  481.  
  482.     (defrule
  483.         (not (goal 35 0) )
  484.         (players-stance any-human-neutral ally)
  485.     =>
  486.         (chat-to-player-using-id this-any-human-neutral 22003)
  487.             ;"Let us be friends henceforth!"
  488.         (set-stance this-any-human-neutral ally)
  489.         (set-stance every-computer enemy)
  490.         (disable-timer t-chatmore)
  491.         (set-goal personality 0)
  492.         (set-goal 35 0)
  493.         (disable-self)
  494.     )
  495.  
  496.     (defrule
  497.         (goal 35 NOTICE)
  498.         (timer-triggered t-chatmore)
  499.         (or
  500.             (players-stance any-human-neutral neutral)
  501.             (players-stance any-human-neutral enemy)
  502.         )
  503.     =>
  504.         (chat-to-player-using-id this-any-human-neutral 22018)
  505.         (chat-to-player-using-id this-any-human-neutral 22019)
  506.             ;"Thou must to set thine diplomatic"
  507.             ;"stance towards me to Ally!"
  508.         (disable-timer t-chatmore)
  509.         (enable-timer t-chatmore 60)
  510.         (set-goal 35 98)
  511.         (disable-self)
  512.     )
  513.  
  514.     (defrule
  515.         (goal 35 98)
  516.         (timer-triggered t-chatmore)
  517.         (or
  518.             (players-stance any-human-neutral neutral)
  519.             (players-stance any-human-neutral enemy)
  520.         )
  521.     =>
  522.         (chat-to-player-using-id this-any-human-neutral 22020)
  523.         (chat-to-player-using-id this-any-human-neutral 22021)
  524.         (chat-to-player-using-id this-any-human-neutral 22022)
  525.             ;"This is thy last warning."
  526.             ;"Set thine stance to Ally with me,"
  527.             ;"as I shall do for thee."
  528.         (disable-timer t-chatmore)
  529.         (enable-timer t-chatmore 60)
  530.         (set-goal 35 97)
  531.         (disable-self)
  532.     )
  533.  
  534.     (defrule
  535.         (goal 35 97)
  536.         (timer-triggered t-chatmore)
  537.         (or
  538.             (players-stance any-human-neutral neutral)
  539.             (players-stance any-human-neutral enemy)
  540.         )
  541.     =>
  542.         (disable-timer t-chatmore)
  543.         (set-goal 35 96)
  544.         (disable-self)
  545.     )
  546.  
  547.     (defrule
  548.         (game-time >= 3600)
  549.         (goal personality ALLY)
  550.     =>
  551.         (set-goal personality 0)
  552.         (set-goal 35 96)
  553.         (disable-self)
  554.     )
  555.  
  556.     (defrule
  557.         (goal 35 96)
  558.         (stance-toward any-human neutral)
  559.     =>
  560.         (chat-to-player-using-id this-any-human-neutral 22023)
  561.         (chat-to-player-using-id this-any-human-neutral 22024)
  562.             ;"Thou hast taken far too long to do that simple task."
  563.             ;"Now we must be foes!"
  564.         (disable-timer t-chat)
  565.         (set-stance this-any-human enemy)
  566.         (set-stance every-computer ally)
  567.     )
  568.  
  569.     #end-if
  570.  
  571. (defrule
  572.     (true)
  573. =>
  574.     (set-strategic-number sn-percent-enemy-sighted-response 25)
  575.     (set-strategic-number sn-easier-reaction-percentage 20)
  576.     (set-strategic-number sn-hits-before-alliance-change 50)
  577.     (set-difficulty-parameter ability-to-maintain-distance 75)
  578.     (set-difficulty-parameter ability-to-dodge-missiles 75)
  579.     (disable-self)
  580. )
  581.  
  582. ;crude age advancement rules
  583. (defrule
  584.     (goal age-advancement NO)
  585.     (players-current-age every-human >= feudal-age)
  586.     (can-research-with-escrow feudal-age)
  587. =>
  588.     (release-escrow food)
  589.     (research feudal-age)
  590.     (set-goal age-advancement NOTICE)
  591.     (enable-timer t-ageup 300)
  592. )
  593.  
  594. (defrule
  595.     (current-age == feudal-age)
  596. =>
  597.     (disable-timer t-ageup)
  598.     (set-goal age-advancement NO)
  599.     (disable-self)
  600. )
  601.  
  602. (defrule
  603.     (goal age-advancement NO)
  604.     (players-current-age every-human >= castle-age)
  605.     (can-research-with-escrow castle-age)
  606. =>
  607.     (release-escrow food)
  608.     (release-escrow gold)
  609.     (research castle-age)
  610.     (set-goal age-advancement NOTICE)
  611.     (enable-timer t-ageup 300)
  612. )
  613.  
  614. (defrule
  615.     (current-age == castle-age)
  616. =>
  617.     (disable-timer t-ageup)
  618.     (set-goal age-advancement NO)
  619.     (disable-self)
  620. )
  621.  
  622. (defrule
  623.     (goal age-advancement NO)
  624.     (players-current-age every-human == imperial-age)
  625.     (can-research-with-escrow imperial-age)
  626. =>
  627.     (release-escrow food)
  628.     (release-escrow gold)
  629.     (research imperial-age)
  630.     (set-goal age-advancement NOTICE)
  631.     (enable-timer t-ageup 300)
  632. )
  633.  
  634. (defrule
  635.     (current-age == imperial-age)
  636. =>
  637.     (disable-timer t-ageup)
  638.     (set-goal age-advancement NO)
  639.     (disable-self)
  640. )
  641.  
  642. (defrule
  643.     (goal age-advancement NOTICE)
  644.     (current-age < imperial-age)
  645.     (timer-triggered t-ageup)
  646. =>
  647.     (disable-timer t-ageup)
  648.     (set-goal age-advancement NO)
  649. )
  650. #end-if
  651.  
  652. ;********************************
  653. #load-if-defined DIFFICULTY-MODERATE
  654. (load "petersen diplomacy")
  655. (load "petersen market")
  656. (load "petersen tower")
  657. (load "petersen wonder")
  658.  
  659. (defrule
  660.     (true)
  661. =>
  662.     (set-strategic-number sn-percent-enemy-sighted-response 75)
  663.     (set-strategic-number sn-hits-before-alliance-change 25)
  664.     (set-difficulty-parameter ability-to-maintain-distance 50)
  665.     (set-difficulty-parameter ability-to-dodge-missiles 50)
  666.     (disable-self)
  667. )
  668. #end-if
  669.  
  670. ;********************************
  671. #load-if-defined DIFFICULTY-HARD
  672. (load "petersen diplomacy")
  673. (load "petersen market")
  674. (load "petersen tower")
  675. (load "petersen wonder")
  676.  
  677. (defrule
  678.     (true)
  679. =>
  680.     (set-strategic-number sn-percent-enemy-sighted-response 99)
  681.     (set-strategic-number sn-hits-before-alliance-change 10)
  682.     (set-difficulty-parameter ability-to-maintain-distance 0)
  683.     (set-difficulty-parameter ability-to-dodge-missiles 0)
  684.     (disable-self)
  685. )
  686.  
  687. #end-if
  688.  
  689. ;********************************
  690. #load-if-defined DIFFICULTY-HARDEST
  691. (load "petersen diplomacy")
  692. (load "petersen market")
  693. (load "petersen tower")
  694. (load "petersen wonder")
  695.  
  696. (defrule
  697.     (true)
  698. =>
  699.     (set-strategic-number sn-percent-enemy-sighted-response 99)
  700.     (set-strategic-number sn-hits-before-alliance-change 10)
  701.     (set-difficulty-parameter ability-to-maintain-distance 0)
  702.     (set-difficulty-parameter ability-to-dodge-missiles 0)
  703.     (disable-self)
  704. )
  705.  
  706. (defrule
  707.     (current-age == imperial-age)
  708. =>
  709.     (enable-timer t-chatmore 1800)
  710.     (disable-self)
  711. )
  712.  
  713. (defrule
  714.     (timer-triggered t-chatmore)
  715. =>
  716.     (cc-add-resource wood 500)
  717.     (cc-add-resource food 500)
  718.     (cc-add-resource gold 500)
  719.     (cc-add-resource stone 500)
  720.     (disable-timer t-chatmore)
  721.     (enable-timer t-chatmore 1200)
  722. )
  723.  
  724. #end-if
  725.  
  726.  
  727.  
  728.